Displaying information to indicate both the importance and the urgency of the information

ABSTRACT

Data items contained in personal information are displayed in manner that is indicative of both the importance and the urgency of the data items. A first visual cue is assigned to the data item based on an importance of the data item. The first visual cue may cause more important items to be displayed with increased size and less important items to be displayed with decreased size. A second visual cue is assigned to the data item based on an urgency of the data item. The second visual cue may cause more urgent items to be displayed in a first color and less important items to be displayed in a second color. The data item is displayed using the first and second visual cue as to provide a visual indication as to both the importance and urgency of the data item.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.10/147,424, filed May 16, 2002, entitled “DISPLAYING INFORMATION TOINDICATE BOTH THE IMPORTANCE AND THE URGENCY OF THE INFORMATION”, andwhich is incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. The Field of the Invention

The present invention relates to displaying personal information at avideo display device. More specifically, the present invention relatesto systems, methods, and computer program products for displayingconsolidated personal information from different applications in amanner that indicates both the importance and urgency of data itemsincluded in the personal information.

2. Background and Relevant Art

Computers have revolutionized our way of life by enhancing our abilityto view information. An individual need only have a computer systemcontaining application programs and a computer monitor to be able toview a wide variety of personal information. Application programs oftenaccess such personal information from local storage devices (e.g. harddisks) and/or computer networks (e.g. the Internet) and display theinformation at a computer monitor.

Personal information, such as that accessed by application programs, maybe viewed as having both an urgency and an importance. Urgent personalinformation may be information that requires immediate action orattention by a particular user. For example, a meeting that is occurringin five minutes. Important personal information may be personalinformation that has significant value to the particular user. Forexample, spending time with one's spouse.

Some personal information may be both urgent and important. For example,a meeting with the company president in five minutes. However, otherpersonal information may have increased urgency and decreasedimportance. For example, a meeting with an annoying sales person in fiveminutes. Likewise, other personal information may have increasedimportance and decreased urgency. For example, attending a grandchild'slittle league game in two weeks.

Application programs often include the functionality to display visualreminders associated with personal information. For example, reminding auser of a currently scheduled meeting or that a bill is past due. Thesevisual reminders are frequently displayed to alert a user as to a levelof urgency associated with personal information. However, such visualreminders are not displayed based on the importance of personalinformation. Further, such visual reminders do not include anyindication of the importance of personal information when the visualreminders are displayed. This is problematic, as a user may desire to bemade aware of the importance of personal information as well as theurgency of personal information.

Further each application may store personal information in a differentformat. A calendar application may store personal information in a firstformat, an electronic message application may store personal informationin a second format, a financial application may store personalinformation in a third format, etc. Thus, even if such applications werecapable of displaying personal information based on importance or in amanner that indicates importance, a number of applications would have tobe able to display the importance of personal information from differentaspects of a person's life.

Therefore, what are desired are systems, methods, and computer programproducts, for displaying personal information so as to indicate both theimportance and the urgency of the personal information.

BRIEF SUMMARY OF THE INVENTION

Methods, systems, and computer program products are described fordisplaying consolidated personal information for a number of differentapplications in a manner that indicates both the importance and theurgency of data items contained in the personal information. Data itemsincluded in personal information may be associated with an urgencyvisual cue and an importance visual cue. When personal information isdisplayed at a video display device, these visual cues affect theappearance of data items contained in the personal information.

In accordance with the present invention, a user-indication of animportance level associated with a particular data item is received. Theparticular data item may be a portion of personal information associatedwith a user that provided the user-indication. An importance level maybe a value that represents the relative importance of the particulardata item compared to other data items. An importance level may bereceived from a computer system input device or from a database. Anapplication program may be configured to update a database when theapplication program detects a change in a user's personal information.For example, if a user changes a project in a scheduling program, thescheduling program may automatically update importance levels for dataitems associated with the project.

Extensible Markup Language (“XML”) tags may be used to facilitatestoring data items from different application programs in a uniformformat. Application programs may utilize the XML tags to associate dataitems with a name, an importance, and an urgency. Data items from anumber of different applications may store data items in a databasewhere each data item is associated with a name, importance, and urgencyin a uniform format.

A first visual cue associated with the data item is assigned based on animportance of the data item and a second visual cue associated with thedata item is assigned based on an urgency of the data item. Anassignable visual cue may include, for example, screen space allocationfor a data item, display color of a data item, display brightness of adata item, or data item indicators, such as flashing video. In someembodiments, importance of the data item is assigned to screen spaceallocation, and urgency of the data item is assigned to display color. Avisual cue may also cause more specific data items to be presentedwithin more general data items. For example, a visual cue may cause amore specific stock value data item to be contained within a moregeneral financial status data item when displayed on a video outputdevice.

The data item is displayed using the first and second visual cues toprovide the user an indication as to both the importance and urgency ofthe data item. In some embodiments, the screen space allocated todisplay the data item may cue the user as to the relative importance ofthe data item. Likewise, the display color of the data item may indicateto the user the relative urgency of the data item. Changes in theimportance and/or urgency values for one data item may affect how otherdata items are presented. For example, if the importance value of a dataitem is increased, screen space allocated for display of the data itemmay also be increased. This may cause screen space allocated for displayof other data items to be decreased.

Screen space may be appropriately allocated between varying levels ofrelative importance so that each data item of the same level ofimportance is allocated the same amount of screen space. Further, screenspace may be allocated so that the total screen space consumed by allthe data items equals or is less than the total screen space of a singlevideo output device. Thus, a user may have a “complete view” of personalinformation from a number of different applications. When a new dataitem is to be displayed, the relative importance of existing data itemsis diluted. This causes the screen space allocated for existing dataitems to be reduced. These reductions free up screen space so the newdata item along with all existing data items are still displayed on asingle video output device.

Using a first visual cue for importance and a second visual cue forurgency when displaying data items enables a user to better judge whatdata items to act on and when to act. Including data items with firstand second visual cues in a “complete view” enables a user to bettermanage personal information as all personal information issimultaneously viewable in a meaningful manner.

Additional features and advantages of the invention will be set forth inthe description that follows, and in part will be obvious from thedescription, or may be learned by the practice of the invention. Thefeatures and advantages of the invention may be realized and obtained bymeans of the instruments and combinations particularly pointed out inthe appended claims. These and other features of the present inventionwill become more fully apparent from the following description andappended claims, or may be learned by the practice of the invention asset forth hereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

In order to describe the manner in which the above-recited and otheradvantages and features of the invention can be obtained, a moreparticular description of the invention briefly described above will berendered by reference to specific embodiments thereof which areillustrated in the appended drawings. Understanding that these drawingsdepict only typical embodiments of the invention and are not thereforeto be considered to be limiting of its scope, the invention will bedescribed and explained with additional specificity and detail throughthe use of the accompanying drawings in which:

FIG. 1 illustrates an example of a computer system that provides asuitable operating environment for the present invention.

FIG. 2 illustrates an example of some of the functional components thatmay facilitate displaying data items using an importance visual cue andan urgency visual cue.

FIG. 3 is a flow diagram illustrating an example of a method fordisplaying data items using an importance visual cue and an urgencyvisual cue.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention extends to systems, methods, and computer programproducts for displaying personal information from a plurality ofapplication programs in a manner that indicates both the importance andthe urgency of data items contained in the personal information.

In operation, a user-indication of an importance level associated with adata item (e.g., a data item representing a portion of personalinformation) is received. The received importance level may be a numericvalue that associates the data item with a relative level of importancewhen compared to the importance of other data items. A first visual cueassociated with the data item is assigned based on the importance of thedata item. More important data items may be displayed with increasedsize and less important data items may be displayed with decreased size.A second visual cue associated with the data item is assigned based onthe urgency of the data item. More urgent data items may be displayed ina first color and less urgent data items may be displayed in a secondcolor. The data item may be stored, along with data items from aplurality of application programs in a format that is uniform for dataitems associated with each application program in the plurality ofapplication programs. The data item is displayed using the first visualcue and the second visual cue to give a visual indication as to both theimportance and urgency of the data item.

The embodiments of the present invention may comprise a general-purposeor special-purpose computer system including various computer hardwarecomponents, which are discussed in greater detail below. Embodimentswithin the scope of the present invention also include computer-readablemedia for carrying or having computer-executable instructions,computer-readable instructions, or data structures stored thereon. Suchcomputer-readable media may be any available media, which is accessibleby a general-purpose or special-purpose computer system. By way ofexample, and not limitation, such computer-readable media can comprisephysical storage media such as RAM, ROM, EPROM, CD-ROM or other opticaldisk storage, magnetic disk storage or other magnetic storage devices,or any other media which can be used to carry or store desired programcode means in the form of computer-executable instructions,computer-readable instructions, or data structures and which may beaccessed by a general-purpose or special-purpose computer system.

In this description and in the following claims, a “network” is definedas any architecture where two or more computer systems may exchange datawith each other. When information is transferred or provided over anetwork or another communications connection (either hardwired,wireless, or a combination of hardwired or wireless) to a computersystem or computer device, the connection is properly viewed as acomputer-readable medium. Thus, any such connection is properly termed acomputer-readable medium. Combinations of the above should also beincluded within the scope of computer-readable media.Computer-executable instructions comprise, for example, instructions anddata which cause a general-purpose computer system or special-purposecomputer system to perform a certain function or group of functions.

In this description and in the following claims, a “computer system” isdefined as one or more software modules, one or more hardware modules,or combinations thereof, that work together to perform operations onelectronic data. For example, the definition of computer system includesthe hardware components of a personal computer, as well as softwaremodules, such as the operating system of the personal computer. Thephysical layout of the modules is not important. A computer system mayinclude one or more computers coupled via a computer network. Likewise,a computer system may include a single physical device (such as a mobilephone or Personal Digital Assistant “PDA”) where internal modules (suchas a memory and processor) work together to perform operations onelectronic data.

Those skilled in the art will appreciate that the invention may bepracticed in network computing environments with many types of computersystem configurations, including personal computers, laptop computer,hand-held devices, multi-processor systems, microprocessor-based orprogrammable consumer electronics, network PCs, minicomputers, mainframecomputers, mobile telephones, PDAs, pagers, and the like. The inventionmay also be practiced in distributed computing environments where localand remote computer systems, which are linked (either by hardwiredlinks, wireless links, or by a combination of hardwired or wirelesslinks) through a communication network, both perform tasks. In adistributed computing environment, program modules may be located inboth local and remote memory storage devices.

With reference to FIG. 1, a suitable operating environment for theprinciples of the invention includes a general-purpose computer systemin the form of a computer system 100. Computer system 100 may be adesktop computer system that has been adapted to perform the operationsdisclosed herein.

FIG. 1 and the following discussion are intended to provide a brief,general description of a suitable computing environment in which theinvention may be implemented. Although not required, the invention willbe described in the general context of computer-executable instructions,such as program modules, being executed by computer systems. Generally,program modules include routines, programs, objects, components, datastructures, and the like, which perform particular tasks or implementparticular abstract data types. Computer-executable instructions,associated data structures, and program modules represent examples ofthe program code means for executing steps of the methods disclosedherein. The particular sequences of such executable instructions orassociated data structures represent examples of corresponding acts forimplementing the functions described in such steps.

Computer system 100 may include user input interface 170, which mayreceive information from an input device such as, for example, akeyboard, mouse, microphone, or remote control. An input device may becoupled to user input interface 170 so as to enable the entry ofinformation. An input device may transfer information over such acoupling in response to preprogrammed data or user manipulation of theinput device.

Computer system 100 may also include video output interface 150, whichmay provide a video output signal to external video display devices.Computer system 100 may be integrally positioned with or separate from avideo display device, such as, for example, computer monitor 157.Computer monitor 157 may be configured to display items of differentsizes and to display items in different colors. Computer monitor 157 maybe further configured to appropriately update displayed items thatchange in size and/or color dynamically. Computer monitor 157 may becoupled to video output interface 150 via video link 158 so as toreceive a provided video output signal.

Similarly, computer system 100 may also include audio output interface130, which may provide an audio output signal to external audio outputdevices. Computer system 100 may be integrally positioned with orseparate from an audio system, which may include a speaker or otherdevice capable of emitting sound data. An audio system may be coupled toaudio output interface 130 so as to receive a provided audio outputsignal.

Computer system 100 includes processing unit 120, which may allow forcomplex and flexible general-purpose processing capabilities. Processingunit 120 may execute computer-executable instructions designed toimplement features of computer system 100, including features of thepresent invention. Processing unit 120 is coupled via system bus 110,which also interconnects various other system components, such as systemmemory 140. System memory 140 generally represents a wide variety ofvolatile and/or non-volatile memories and may include types of memorypreviously discussed. However, the particular type of memory used incomputer system 100 is not important to the present invention. Programcode means comprising one or more program modules may be stored insystem memory 140. The one or more program modules may include anoperating system 141, one or more application programs 142, otherprogram modules 143, and program data 144.

Computer system 100 may include mass storage interface 160, which mayread data from and/or write data to a mass storage device, such as, forexample, a magnetic disk storage device or optical disk storage device.A mass storage device may be coupled to mass storage interface 160 so asto enable the reading and writing of data. When a mass storage device iscoupled to mass storage interface 160, one or more program modulesincluding operating system 141, application programs 142, other programmodules 143, and program data 144 may be stored in the mass storagedevice.

Computer system 100 may include network interface 180, through whichcomputer system 100 may receive data from or transmit data to externalsources, such as for example, external computer systems or databases.Computer system 100 may be network connectable to networks that includeexternal computer systems and/or databases and may exchange data withsuch computer systems and databases.

While FIG. 1 represents a suitable operating environment for the presentinvention, the principles of the present invention may be employed inany system that is capable of, with suitable modification if necessary,implementing the principles of the present invention. The environmentillustrated in FIG. 1 is illustrative only and by no means representseven a small portion of the wide variety of environments in which theprinciples of the present invention may be implemented.

In this description and in the following claims, a “logicalcommunication link” is defined as any communication path that may enablethe transport of electronic data between two entities such as computersystems or modules. The actual physical representation of acommunication path between two entities is not important and may changeover time. A logical communication link may include portions of a systembus, a local area network, a wide area network, the Internet,combinations thereof, or portions of any other path that may facilitatethe transport of electronic data. Logical communication links mayinclude hardwired links, wireless links, or a combination of hardwiredlinks and wireless links. Logical communication links may also includesoftware or hardware modules that condition or format portions of dataso as to make them accessible to components that implement theprinciples of the present invention. Such components may include, forexample, proxies, routers, firewalls, or gateways. Logical communicationlinks may also include portions of a Virtual Private Network (“VPN”).

In accordance with the present invention, display modules as well asassociated data, including data items contained in personal informationmay be stored and accessed from any of the computer-readable mediaassociated with computer system 100. For example, portions of suchmodules and portions of associated program data may be included inoperating system 141, application programs 142, program modules 143and/or program data 144, for storage in system memory 140. If a massstorage device is coupled to computer system 100, such modules andassociated program data may also be stored in the mass storage device.Execution of such modules may be performed in a distributed environmentas previously described.

FIG. 2 illustrates some of the functional components that may facilitatedisplaying data items using an importance visual cue and an urgencyvisual cue. Shown in FIG. 2 is personal information 200, which includesa plurality of data items. Personal information 200 may represent adatabase that stores data items. Data items stored in personalinformation 200 may be data items that are associated with differentapplication programs. For example, data item 210 may be associated witha calendar application program, data item 220 may be associated with anelectronic messaging application program, and data item 230 may beassociated with a financial application program. Each data item inpersonal information 200 may include an importance level, representingthe importance of the data item and an urgency level, representing theurgency of the data item. For example, data item 210 includes importancelevel 211 and urgency level 212.

In this description and in the claims, an “urgency level” or the“urgency” of a data item means a degree to which the data item suggestsimmediate action or course of action on the part of the user. Whilethese terms suggest immediate action or course of action, they do notsuggest the value to the user in completing the immediate action orengaging in the course of action. For example, a reminder to meetingwith annoying salesperson in 5 minutes is urgent since it suggestsimmediate action in preparing for the meeting, even though thesuccessful preparation for the meeting is not critical to the user.

An “importance level” or the “importance” of a data item means the valueto the user in the suggested action being successful accomplished or thecourse of action being properly engaged in, regardless of when theaction should be accomplished or when the course of action should beengaged in. For example, spending time with one's spouse may beimportant to a user, regardless of when that time is.

Also shown in FIG. 2 is computer system 240, which includes displaymodule 241. Display module 241 may utilize visual cues identified forand/or assigned to the importance and urgency of data items to causedata items to be displayed at video display device 250. Video displaydevice 250 may be a computer monitor configured similarly to computermonitor 157.

FIG. 3 is a flow diagram illustrating an example of a method fordisplaying data items using an importance visual cue and an urgencyvisual cue. The method in FIG. 3 will be discussed with reference to thefunctional components included in FIG. 2.

The method in FIG. 3 may begin with a functional, result-oriented stepfor identifying a first visual cue and a second visual cue for a dataitem (step 305). An identifiable visual cue may include visualcharacteristics, such as, for example, display color, display size (e.g.screen space allocation), and display intensity (e.g. brightness). Anidentifiable visual cue may also include more dynamic visualcharacteristics such as, for example, varying display colors, varyingdisplay size, or varying display intensity (e.g. flashing video) overtime or at specified time intervals. A plurality of visualcharacteristics, for example, varying the intensity and the color of adata item once every second, may be included in an identified visual cuefor a data item.

The first visual cue may be associated with the importance of a dataitem and the second visual cue may be associated with the urgency of adata item. The first visual cue and the second visual cue may differ,for example, a visual cue of display size may be associated withimportance and a visual cue of display color may be associated withurgency. The data item may be a portion of personal informationassociated with a user.

In one example embodiment, data items are displayed in athree-dimensional representation. The perceived distance from a dataitem represents the importance of the data item and display intensity ordisplay color represent the urgency of the data item. By using athree-dimensional representation, a clear indication of the importanceof a data item can be conveyed to a user. More important data itemswould be perceived by the user to be closer and less important dataitems would be perceived by the user to be further away. Thus, the usermay be “compelled” to deal with data items that are closer (moreimportant) rather than data items that are urgent only.

In some embodiments, a first sound cue and/or a second sound cue may beidentified. An identifiable sound cue may include audio characteristics,such as, for example, loudness, pitch, timbre, frequency, amplitude, andharmonic constitution thtat make up a sound. An identifiable audio cuemay also include varying audio characteristics over time or at specifiedintervals and/or a combination of different audio characteristics. Thefirst sound cue may be associated with the importance of a data item andthe second sound cue may be associated with the urgency of the dataitem. The first sound cue and the second sound cue may be differentsound cues.

Step 305 may include a corresponding act of receiving a user-indicationof an importance level associated with a particular data item (act 301).The particular data item may be a portion of personal informationassociated with the user that provided the user-indication. As shown inFIG. 2 by arrow 1, display module 241 receives personal information 200.Each data item contained in personal information 200 includes animportance level, for example, data item 220 includes importance level221. An importance level for a data item may be represented by a numericvalue. The numeric value may indicate a relative level of importance ofthe particular data item when compared to other data items. For example,a first data item with an importance level value of 10 may be viewed asmore important than a second data item with an importance level value of5 but less important than a third data item with an importance levelvalue of 20.

It may be that a user associated with personal information 200previously entered importance levels for each data item contained inpersonal information 200. Importance levels may be entered from an inputdevice, such as an input device coupled to user input interface 170.

In some embodiments, application programs may be configured to storedata items in personal information 200. Thus, personal information 200may include data items from a plurality of different applicationprograms. When an application program detects a change in a user'spersonal information, data items stored in personal information 200 maybe updated. A user may configure application programs to update storeddata items in a desired manner. For example, a user may configure ascheduling program to automatically update importance levels for thedata items of a project when changes in the project are detected.Although different application programs may store data items indifferent formats when storing data items for self-retrieval, the dataitems contained in personal information 200 may be stored in a uniformformat across the different applications. Data items may be stored in auniform format using any storage system that can store hierarchicalinformation, such as, for example, databases or extensible mark-uplanguage (“XML”) files.

When using XML files, application programs may be associated with XMLtags that facilitate storing data items in a database in accordance witha potentially extensible, but predefined, uniform format. A plurality ofapplication programs may each have XML tags that facilitate storing andupdating data items. A personal information manager may have XML tags toupdate contact and calendaring information, a personal finance programmay have XML tags to update account balances or stock prices, etc. XMLtags for each application program may be configured so that data itemsfrom different application programs are stored and updated in a uniformformat. Thus, any module configured to access data in the uniformformat, may access meaningful data items associated with differentapplication programs. The data items contained in personal information200 may be in a uniform format that is accessible by display module 241.

An example of storing data items in a uniform format will be describedwith reference to XML. In the XML example of this description, dataitems are organized in a hierarchical form independent of the programapplications that generated the data items. The following description isillustrative only. It would be apparent to one skilled in the art, afterhaving reviewed this description, that a wide variety of programminglanguages and programming techniques may be used to implementcomputer-executable or computer-readable instructions for storing dataitems in a uniform format. In the XML example of this description, whena sole period is encountered on three consecutive lines (i.e., avertical ellipsis), this represents that other instructions may precedethe illustrated instructions or that some other instructions may followthe illustrated instructions. Numbers enclosed in brackets are linenumbers and are included for informational purposes to aid in clarifyingthe description of the instructions. . . . [01]<karma> [02]  <nodename=“Family” importance=“40”> [03]   <node name=“Wife” importance=“20”>[04]   </node> [05]   <node name=“Son” importance=“40”> [06]    <nodename=“CollegeEducation” importance=“100”       lastUrgency=“−30”> [07]     <urgencyCalculator url=“http://yearsuntilcollege.com”> [08]     </urgencyCalculator> [09]     </node> [10]    </node> [11]  </node> [12]   <node name=“Finance” importance=“30”> [13]    <nodename=“Education” importance=“100”> [14]     <nodename=“CollegeEducation” importance=“30”        lastUrgency=“−30”> [15]     <urgencyCalculator url=“http://yearsuntilcollege.com”> [16]     </urgencyCalculator> [17]     </node> [18]     <nodename=“NewComputer” importance=“20”        lastUrgency=“40”> [19]     <urgencyCalculator [20]      url=“http://assetmanagement.com/mystuff/          mycomputer”>[21]      </urgencyCalculator> [22]     </node> [23]     <nodename=“Taxes” importance=“100” lastUrgency=“2”> [24]     <urgencyCalculator application=“Money Management         Program”>[25]      </urgencyCalculator> [26]     </node> [27]   </node> [28] </node> [29]</karma> . . .

Shown at line 01 in the XML example is the opening tag that correspondsto a closing tag at line 29. Accordingly, lines 01 through 29 define anelement entitled “Karma”. Node subelements contained in the Karmaelement (hereinafter referred to simply as “nodes”) are indicated by a“<node>”-“</node>” pair (e.g. the <node> at line 05 and the </node> atline 10). Each node represents a data item that is a portion of personalinformation for a user. Further, each node includes a name attribute anda name attribute value. For example, the node at line 02 includes a nameattribute with a name attribute value of “Family”. Throughout thedescription of the XML example, a node may be referred to by itsincluded name attribute value. For example, the node at line 02 may bereferred to as the “Family Node” at line 02.

The nodes in the XML example are arranged in a node hierarchy where eachnode may contain one or more subnodes. For example, the Family node atline 02 contains the Wife subnode at line 03 and the Son subnode at line05. The Son subnode at line 05 further contains the CollegeEducationsubnode at line 06. The CollegeEducation subnode at line 06 is alsoviewed as “leaf node” because no subnodes are contained in theCollegeEducation subnode at line 06.

Each node, whether it is a node, subnode, or leaf node, also includes animportance attribute and an importance attribute value. The importanceattribute value for a node represents the importance level of the nodewith a numeric value ranging from 1 (less important) to 100 (moreimportant). This numeric value may have been received as auser-indication of an importance level in act 301. It should beunderstood that the numeric range from 1 to 100 is merely an example andthat other numeric ranges may be used.

Each leaf node, such as those at lines 06, 14, 18, and 23, also includesa lastUrgency attribute and a lastUrgency attribute value. ThelastUrgency attribute value for a node represents the last urgency levelthat was reported for the node with a numeric value ranging from −100(less urgent) to 100 (more urgent). Each leaf node contains anurgencyCalculator element (e.g. at lines 07, 15, 19, and 24)representing an urgency calculator program (hereinafter referred to asan “urgency calculator”) that calculates lastUrgency attribute values.It should be understood that the numeric range from −100 to 100 ismerely an example and that other numeric ranges may be used.

Different urgency calculators may be used to calculate lastUrgencyattribute values for different leaf nodes. An addressing mechanism maybe used to reference a particular urgency calculator used to calculate alastUrgency attribute value for a particular data item. Urgencycalculators used to calculate lastUrgency attribute values may becontained in the computer system where the data items are stored and/ormay contained in networked computer systems, such as, for example,computer systems that are network connectable to the Internet.

A url attribute and url attribute value may be used to reference urgencycalculators contained in networked computer systems. The url attributevalue may be a Uniform Resource Locator (“URL”) that is used to accessan urgency calculator contained in a computer system on the World WideWeb (“WWW”). For example, at line 07 the url attribute value“http://yearsuntilcollege.com” references an urgency calculator thatcalculates a lastUrgency attribute value for the CollegeEducation leafnode at line 06. The url attribute value may also be used to referenceSimple Object Access Protocol (“SOAP”) calls, or even to present aquestion to a user.

Likewise, an application attribute and application attribute value maybe used to reference urgency calculators contained in the computersystem where data items are stored. The application attribute value maybe a name of an urgency calculator that is used to access the urgencycalculator. For example, at line 24 the application attribute value“Money Management Program” references an urgency calculator thatcalculates lastUrgency attribute value for Taxes leaf node at line 23.

It should be understood that URLs and urgency calculator names aremerely examples of addressing mechanisms. Other addressing mechanisms,such as, for example, Internet Protocol (“IP”) addresses, Domain NameServices (“DNS”), electronic mail addresses, application program aliases(e.g. short cuts), and the like, may be used when implementing theprinciples of the present invention. Further, the principles of thepresent invention do not depend on any particular addressing mechanismwhen referencing urgency calculators that calculate lastUrgencyattribute values. It would be apparent to one skilled in the art, afterhaving reviewed this description, that a wide variety of addressingmechanisms, in addition to those described, may be used to referenceurgency calculators that calculate lastUrgency attribute values.

Urgency calculators (e.g. those referenced by application attributevalues or url attribute values) can be implemented using virtually anytechnique that is capable of returning a value in a specified range(i.e. −100 to 100), such as, for example, Structured Query Language(“SQL”) statements, SOAP calls, Component Object Model (“COM”)automation objects, and spreadsheet values. Urgency calculators may beflexibly configurable to calculate lastUrgency attribute values for dataitems of existing and future data formats.

Different methods may be used to calculate a lastUrgency attribute valuefor a data item. For example, if a deadline for a two hour assignment isin the next ten hours but all the time in the next ten hours is alreadybooked, a lastUrgency attribute value for the deadline may be set equalto 100 since the deadline will not be met unless we decide not doingsomething else. On the other hand, if a deadline for the two hourassignment is in the next week and there is plenty of free time in thenext week, a lastUrgency attribute value for the deadline may be setequal to −100. Further, methods for lastUrgency attribute values neednot be associated with deadlines. For example, for a budget data item,instead of calculating the lastUrgency attribute value based onlikelihood of satisfying a deadline, the lastUrgency attribute value maybe calculated based on being under or over budget.

The lastUrgency values for non-leaf nodes may be calculated by averagingthe lastUrgency attribute values for leaf nodes that are contained inthe non-leaf nodes. For example, the lastUrgency value for the Educationsubnode at line 13 is equal to 4, which is the average of thelastUrgency attribute value of the CollegeEducation subnode at line 14(i.e. −30), the lastUrgency attribute value of the NewComputer subnodeat line 18 (i.e. 40), and the lastUrgency attribute value of the Taxessubnode at line 23 (i.e. 2).

As illustrated in the XML example, the Son subnode at line 05 andEducation subnode at line 13 each contain a CollegeEducation subnode(i.e the CollegeEducation subnodes at lines 06 and 14). This illustratesthat the same data item may be included in different aspects of a userslife. The CollegeEducation subnode at line 06 includes an importanceattribute value of 100 and the CollegeEducation subnode at line 14includes an importance attribute value of 30. This indicates thatCollegeEducation may be more important to an aspect of a user's familylife and less important to an aspect of the user's financial life.

In some embodiments, XML tags are used to facilitate the gathering ofdata items from different databases. Databases may be contained in localcomputer systems, as well as remote computer systems that are accessedover a network, such as, for example, the Internet. For example, dataitems in personal information 200 may be gathered from databasescontained in computer system 240, as well as databases contained inother computer systems that are network connectable to computer system240. Data items may be transported over a network using variousprotocols, including SOAP.

Step 305 may include a corresponding act of assigning a first visual cueassociated with the data item based on the importance of the data item(act 302). Display module 241 may assign a first visual cue to a dataitem contained in personal information 200. The assigned first visualcue may be based on the importance level of the data item. For example,display module 241 may assign a first visual cue to data item 230 basedon importance level 231.

An assigned first visual cue may be associated with one or more visualcharacteristics, such as, for example, display color, display size (e.g.screen space allocation), and display intensity (e.g. brightness). Theimportance level of a data item may be assigned a first visual cue thatincludes a display size visual characteristic. The display size of aparticular data item may be varied based on an importance levelassociated with the data item. The particular data item may be displayedas larger than other data items associated with lower levels ofimportance. The particular data item may be displayed as smaller thanother data items associated with higher levels of importance.

An assigned first visual cue may also include more dynamic visualcharacteristics such as, for example, varying display colors, varyingdisplay size, or varying display intensity (e.g. flashing video) overtime or at specified time intervals. A plurality of visualcharacteristics, for example, varying the colors of data items ofdifferent sizes at specified time intervals, may be included in anassigned first visual cue for a data item. In one example embodiment, afirst visual cue is assigned to a three-dimensional representation ofthe data item. A user may perceive the data item as closer than otherdata items with lower levels of importance and further away than otherdata items with higher levels of importance.

In parallel with act 301, step 305 may include a corresponding act ofassigning a second visual cue associated with the data item based on theurgency of the data item (act 302). Display module 241 may assign asecond visual cue to a data item contained in personal information 200.The assigned second visual cue may be based on the urgency level of thedata item. For example, display module 241 may assign a second visualcue to data item 230 based on urgency level 232.

An urgency level may be represented by a numeric value that indicates arelative level of urgency of the particular data item compared to otherdata items. For example, a first data item with an urgency level valueof 20 may be viewed as more urgent than a second data item with anurgency level value of 10 but less urgent than a third data item with anurgency level value of 30.

It should be understood that the use of numeric values to indicate therelative importance or urgency of a data item is merely an example. Itwould be apparent to one skilled in the art, after having reviewed thisdescription, that a wide variety of techniques, in addition to usingnumeric values, may be used to indicate the relative importance orrelative urgency of a particular data item.

An assigned second visual cue may be associated with one or more visualcharacteristics, such as, for example, display color, display size (e.g.screen space allocation), and display intensity (e.g. brightness). Theurgency level of a data item may be assigned a second visual cue thatincludes a display color visual characteristic. The display color for aparticular data item may be varied based on a relative urgency levelassociated with the data item. The particular data item may be displayedin a color that is different than the display color of other data itemsassociated with lower levels of urgency. Likewise, the particular dataitem may be displayed in a color that is different than the displaycolor of other data items associated with higher levels of urgency. Thesecond visual cue may be associated with visual characteristics that aredifferent from the visual characteristics associated with the firstvisual cue. In one example embodiment, a second visual cue is assignedto a three-dimensional representation of the data item. The color orbrightness of the data item may vary based on the urgency level of thedata item.

In some embodiments, relative urgency levels may cause a data item to beclassified as an urgent data item or a non-urgent data item. A data itemwith a relative urgency level greater than some predetermined urgencylevel may be classified as an urgent data item. Urgent data items may beassigned a second visual cue of being displayed in a first color that isindicative of a data item being classified as urgent (hereinafterreferred to as an “urgent color”). A data item with a relative urgencylevel less than the predetermined urgency level may be classified as anon-urgent data item. Non-urgent data items may be assigned a secondvisual cue of being displayed in a second color that is indicative of adata item being classified as non-urgent (hereinafter referred to as a“non-urgent color”). In some cases, an urgent color may be a red colorand a non-urgent color may be a green color.

An assigned second visual cue may also include more dynamic visualcharacteristics such as, for example, varying display colors, varyingdisplay size, or varying display intensity (e.g. flashing video) overtime or at specified time intervals. A plurality of visualcharacteristics may be included in an assigned second visual cue for adata item.

In some embodiments, the importance of the data item and/or the urgencyof the data may be assigned to a sound cue. Further, it may be thatimportance is assigned to a visual cue and urgency is assigned to asound cue or vice versa. For example, importance may be assigned to avisual cue of varying display size and urgency may be assigned to asound cue of beeping at a specified loudness and pitch at specified timeintervals. Similarly, importance and/or urgency may be assigned to botha visual cue and a sound cue. For example, importance may be assigned toa visual cue of display size and to a sound cue of beeping at aspecified loudness and pitch at specified time intervals.

The data item is displayed using the first and second visual cues (act304). Displaying a data item using a first and second visual cue mayprovide a visual indication as to both the importance and the urgency ofthe data item. As shown in FIG. 2 by arrow 2, display module 241 causesa data item to be displayed at video display device 250. Display module241 may use a first and second visual cue when causing a data itemcontained in personal information 200 to be displayed. Data items may bedisplayed at video output device 250 so as to provide a visualindication as to an importance level and urgency level associated withthe data item. For example, display module 241 may display data item220, to provide a visual cue as to a value associated with importancelevel 221 and a value associated with urgency level 222.

In some embodiments, display size (a first visual cue) may provide a cueas to the relative importance of the data item and display color (asecond visual cue) may provide a cue as to the relative urgency of thedata item. Data items with higher levels of importance may be displayedwith increased size (i.e. taking up increased amounts screen space whendisplayed) and data items with lower levels of importance may bedisplayed with decreased size (i.e. taking up decreased amounts screenspace when displayed). Data items classified as urgent may be displayedin the first color and data items classified as non-urgent may bedisplayed in the second color. Data items may be displayed using displaysize along with display color to simultaneously provide a visual cue asto both the importance and the urgency of the data item.

In may be that the importance and urgency of a data item correspond toone another. That is, a data item may have both increased importance andincreased urgency or may have both decreased importance and decreasedurgency. A data item having increased importance and having increasedurgency may be displayed with increased size in an urgent color. On theother hand, a data item having decreased importance and having decreasedurgency may be displayed with decreased size in a non-urgent color.

In other cases, the importance and urgency of a data item may notcorrespond to one another. That is, a data item may have increasedimportance and decreased urgency or may have decreased importance andincreased urgency. A data item having increased importance and havingdecreased urgency may be displayed with increased size in a non-urgentcolor. On the other hand, a data item having decreased importance andhaving increased urgency may be displayed with decreased size in anurgent color.

Changes in the importance and/or urgency values for a data item mayaffect how a data item is displayed. When the importance value for adata item is increased, video output device 250 may be updated so thatthe display size of the data item is increased. Similarly, when theimportance value for a data item is decreased, video output device 250may be updated so that the display size of the data item is decreased.An importance value for a data item may change as a result of an updateduser-indication.

When the urgency value for a data item is increased, video output device250 may be updated so that the data item is displayed in an urgentcolor. Similarly, when the importance value for a data item isdecreased, video output device 250 may be updated so that the data itemis displayed in a non-urgent color. An urgency value for a data item maychange as a result of an updated user-indication.

An updated user-indication may result when a user enters or anapplication program stores a new value for the importance or urgency ofa data item. If a new value for the importance of a data-item differsfrom a current value for the importance of the data-item this may beviewed as an updated user-indication. Likewise, if a new value for theurgency of a data-item differs from a current value for the urgency ofthe data-item this may also be viewed as an updated user-indication.

Changes in importance and/or urgency levels of one data item may alsoaffect how other data items are displayed. In some embodiments, morespecific data items may be displayed within the boundaries of moregeneral data items. For example, more specific data items for bankaccounts, stocks, and insurance policies may be displayed within theboundaries of a more general data item for financial status.

Changes in the importance levels of more specific data items may affectthe display of more general data items. When the importance level of amore specific data item is increased, the more specific data item may bedisplayed with increased size. To compensate for the increased displaysize of the more specific data item, the display size of the moregeneral data item may also be increased. The more general data item maybe displayed with increased size so that the more specific data item maystill be displayed along with other more specific data items within theboundaries of the more general data item. Likewise, when a more specificdata item is displayed with decreased size, a more general data item mayalso be displayed with decreased size.

Changes in the urgency levels of the more specific data items may alsoaffect the display of more general data items. When a specified numberof more specific data items are classified as urgent, this may cause amore general data item to also be classified as urgent. Thus, when thespecified number of more specific data items is displayed in an urgentcolor, the more general data item may also be displayed in the urgentcolor. Likewise, when a specified number of more specific data items areclassified as non-urgent, this may cause a more general data item toalso be classified as non-urgent. Thus, when the specified number ofmore specific data items is displayed in a non-urgent color, the moregeneral data item may also be displayed in the non-urgent color.

In some embodiments, screen space may be appropriately allocated betweenlevels of relative importance so that each data item of the same levelof importance is displayed the same size. Further, screen space may beallocated so that the total screen space consumed by all the data itemsequals or is less than the total screen space of a single video displaydevice. Thus, a user may have a “complete view” of their personalinformation. For example, all the data items contained in personalinformation 200 may be displayed at video display device 250. When a newdata item is to be displayed, the relative importance of existing dataitems is diluted. This causes the screen space allocated for existingdata items to be reduced. These reductions free up screen space so thenew data item along with all existing data items are still displayed ona single video display device.

Using a first visual cue for importance and a second visual cue forurgency when displaying data items enables a user to better judge whatdata items to act on and when to act. Including data items with a firstand second visual cue in a “complete view” enables a user to bettermanage personal information, as all personal information issimultaneously viewable in a meaningful manner.

If computer system 240 is coupled to an audio output device (e.g.through audio output interface 130), the data item may be output usingsound cues. A data item may be output using only sound cues or may beoutput using sound cues along with visual cues. Sounds associated with adata item may be emitted at an audio output device, while visual cuesare displayed at video display device 250.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by the foregoing description. Allchanges, which come within the meaning and range of equivalency of theclaims, are to be embraced within their scope.

1. A computer program product for use in a computer system including avideo display device and an audio output device, the computer programproduct comprising one or more computer-readable media havingcomputer-executable instructions for implementing a method forpresenting data items included in personal information so as to indicatethe importance and urgency of the personal information, and wherein themethod comprises: an act of receiving a user-indication of an importancelevel associated with a particular data item; an act of assigning afirst cue associated with the data item based on an importance of thedata item, the first cue comprising a perceived depth corresponding to a3-dimensional display of the data item; an act of assigning a second cueassociated with the data item based on an urgency of the data item, thesecond cue comprising one of a color and an intensity; and an act ofcausing the data item to be output using the first and second cues in aperceived 3-dimensional displayed image to provide an indication as toboth the importance and the urgency of the data item.
 2. The computerprogram product as recited in claim 1, wherein the method furthercomprises an act of assigning a third cue associated with the date itembased on an importance of the data item, the third cue comprising asound cue.
 3. The computer program product as recited in claim 1,wherein the method further comprises an act of assigning a third cueassociated with the date item based on an urgency of the data item, thethird cue comprising a sound cue.
 4. The computer program product asrecited in claim 1, wherein the act of causing the data item to beoutput using the first and second cues to provide an indication as toboth the importance and the urgency of the data item comprises thefollowing: an act of causing the data item to be output using a soundcue.
 5. A computing system comprising: a video display device; an audiooutput device; a processor for processing computer-executableinstructions; and a computer program product comprising one or morecomputer-readable media having the computer-executable instructions forimplementing a method for presenting data items included in personalinformation so as to indicate the importance and urgency of the personalinformation, and wherein the method comprises: an act of receiving auser-indication of an importance level associated with a particular dataitem; an act of assigning a first cue associated with the data itembased on an importance of the data item, the first cue comprising aperceived depth corresponding to a 3-dimensional display of the dataitem; an act of assigning a second cue associated with the data itembased on an urgency of the data item, the second cue comprising one of acolor and an intensity; and an act of causing the data item to be outputusing the first and second in a perceived 3-dimensional displayed imageto provide an indication as to both the importance and the urgency ofthe data item.
 6. The computing system as recited in claim 5, whereinthe method further comprises an act of assigning a third cue associatedwith the date item based on an importance of the data item, the thirdcue comprising a sound cue.
 7. The computing system as recited in claim5, wherein the method further comprises an act of assigning a third cueassociated with the date item based on an urgency of the data item, thethird cue comprising a sound cue.
 8. The computing system as recited inclaim 5, wherein the act of causing the data item to be output using thefirst and second cues to provide an indication as to both the importanceand the urgency of the data item comprises the following: an act ofcausing the data item to be output using a sound cue.